using System;
using System.Collections.Generic;

namespace XSResearch
{
    /// <summary>
    /// 智能体基类
    /// Base class for all intelligent agents
    /// </summary>
    public abstract class Agent
    {
        public string Name { get; protected set; }
        protected XRInterface xrInterface;
        protected DataAnalyzer dataAnalyzer;
        protected float[] CurrentState;
        protected int CurrentAction;

        public Agent(string name, XRInterface xr, DataAnalyzer da)
        {
            Name = name;
            xrInterface = xr;
            dataAnalyzer = da;
        }

        public abstract void Perceive();
        public abstract void Decide();
        public abstract void Act();
        public abstract void Learn();
    }
}